home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 1 / NetNews Offline Volume 1.iso / news / fido / ger / amiprog / 159 < prev    next >
Internet Message Format  |  1996-03-16  |  2KB

  1. From: Andreas_Trottmann@p6.f317.n301.z2.fido.sub.org (Andreas Trottmann)
  2. Organization: I'm in the army now, oh-o-oh I'm in the army, now :
  3. Path: f317.n301.z2.fidonet.org!not-for-mail
  4. Newsgroups: fido.ger.amiprog
  5. Subject: Re: reqtools-FRAGE
  6. Message-ID: <MSGID_2=3A301=2F317.6=40fidonet_5F4EEA61@fidonet.org>
  7. References: <MSGID_2=3A246=2F1416.45_305a1bed@fidonet.org>
  8. Date: Fri, 22 Sep 1995 11:30:22 +0200
  9.  
  10. Am 15 Sep 95 schrieb Willi an ALLE:
  11. Mid: 2:301/317.6@fidonet 5F4EEA61
  12. Rid: 2:246/1416.45 305a1bed
  13.  
  14.  WE> Wil sagen, ich hab nen Requester, der irgendwas sagt, und wieder ab-
  15.  WE> haut, wenn irgendwas passiert.
  16.  
  17.  WE> also so ala
  18.  
  19.  WE> RTBauAufRequester(Req1,"Ich dire HD55");
  20.  WE> Execute("Dir HD55:",NULL,NULL);
  21.  WE> RTZischAbRequester(Req1);
  22.  
  23. Yup! Geht sogar fast so einfach wie Du geschrieben hast ;-)
  24.  
  25. Hier ein Auszug aus reqtools.doc (mit rtFontRequest(), geht natuerlich auch mit
  26. anderen)
  27.  
  28. -----------8<--------------8<--------------8<--------------8<------------
  29.     ...
  30.     struct rtHandlerInfo *hinfo;
  31.     ULONG ret, mymask, sigs;
  32.  
  33.     ...
  34.        /* calculate our mask */
  35.        mymask = 1 << win->UserPort->mp_SigBit;
  36.  
  37.        /* We use the RT_ReqHandler tag to cause the requester to return
  38.           after initializing.
  39.           Check the return value to see if this setup went ok. */
  40.        if (rtFontRequest (req, "Font", RT_ReqHandler, &hinfo, TAG_END)
  41.                                                            == CALL_HANDLER) {
  42.           do {
  43.             /* Wait() if we can */
  44.             if (!hinfo->DoNotWait)
  45.                sigs = Wait (hinfo->WaitMask | mymask);
  46.  
  47.             /* check our own message port */
  48.             while (msg = GetMsg (win->UserPort)) {
  49.                ...
  50.                /* here we handle messages received at our windows IDCMP         
  51.      ...
  52.                   port */
  53.                ...
  54.                }
  55.  
  56.             /* let the requester do its thing (remember to pass 'sigs') */
  57.             ret = rtReqHandler (hinfo, sigs, TAG_END);
  58.  
  59.             /* continue this loop as long as the requester is up */
  60.             } while (ret == CALL_HANDLER)
  61.  
  62.           /* when we get here we know the requester has finished, 'ret'
  63.              is the return code. */
  64.           ...
  65.           }
  66.        else notify ("Error opening requester!");
  67.     ...
  68. ----------->8-------------->8-------------->8-------------->8------------
  69.  
  70. In einem solchen Fall darf man sogar 
  71.